package com.sky.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface PreventDuplicate {

    /**
     * 唯一Key的生成策略参数（支持SpEL表达式）
     * 示例：从参数中取手机号 -> #request.mobile
     * 从用户ID生成 -> #userId
     */
    String key() default "";

    /**
     * 锁过期时间（默认3秒）
     */
    int expire() default 3;

    /**
     * 错误提示信息
     */
    String message() default "请勿重复提交";
}
